const express = require('express');
const app = express();
// 导入中间件
const bodyParser = require('body-parser')

// ws 模块
const expressWs = require('express-ws');
expressWs(app);

// 加载环境变量
require('dotenv').config(); 
const port = process.env.APP_PORT;

// 使用 JSON 中间件来解析请求体
app.use(express.json());
app.use(express.static('static'))
// 处理URL编码格式的数据
app.use(bodyParser.urlencoded({ extended: false })); 
// 处理JSON格式的数据
app.use(bodyParser.json()); 


// 导入用户路由模块
const userRoutes = require('./src/router/userRouter');
const uploadRouter = require('./src/router/uploadRouter');
const wsChatUtlis = require('./src/middleware/wsChat/index');

// 处理 WebSocket 请求
app.ws('/chat', wsChatUtlis)
// 使用用户路由
app.use(userRoutes, uploadRouter);

// 根路由
app.get('/', (req, res) => {
    res.send('Hello World!')
})

app.listen(port, () => {
    console.log(`Server is running on port localhost:${port}`)
})